<?php

namespace app\api\controller\pub;

use app\api\controller\Base;
use app\common\model\pub\Telbind;
use think\facade\Request;
use app\api\controller\Pub;
use think\facade\Cache;
use app\common\model\user\User as UserModel;

class Telpcphone extends Base
{
    /**
     * 流程
     * 前端：设置临时token
     * 后端：根据token设置临时缓存（3分钟）
     * PC：发送到手机（给缓存设置客户信息）
     * 前端点击拨打，（接口调取客户信息，调用电话拨打功能）
     */

    public function initialize()
    {
        parent::initialize();
    }

    /**
     * 设置连接秘钥
     * 由Customer模块调用此函数
     * @return [type] [description]
     */
    public static function get_start_link(){
        $userid = Pub::userid();
        $sb = Cache::get('linke_token_'.$userid);
        if(empty($sb)){
            $link_token = md5(time().$userid.rand(100,999));
            Cache::set('linke_token_'.$userid,$link_token,3600);
        }else{
            $link_token = $sb;
        }
        Cache::set($link_token,'empty',600);
        return sok($link_token);
    }

    /**
     * 设置token内容
     * 由Customer模块调用此函数
     */
    public static function set_customer_phone($link_token,$phone)
    {
        if(empty($link_token)){
            return serr('缺少链接秘钥');
        }
        Cache::set($link_token,$phone,600);
        return sok('请10分钟内，在移动端点击拨打');
    }

    /**
     * 获取客户的电话
     * @return [type] [description]
     */
    public function get_customer_phone(){
        $link_token = input('link_token');
        if(empty($link_token)){
            return myerr('缺少链接秘钥');
        }
        $sb = Cache::get($link_token);
        if(empty($sb)){
            return myerr('链接秘钥已失效');
        }elseif($sb =='empty'){
            return myerr('请选择需要联系的客户');
        }else{
            return myok($sb);
        }
    }

    /**
     * 判断账号是否登录
     * @return boolean [description]
     */
    private function is_login(){
        $data = UserModel::is_sessionlogin();
        if (!$data['code']) {
            $data['options'] = 'relogin';
            json($data)->send();
            exit;
        }
    }
}